package com.iris.live.services.data.repositories;

import java.util.List;

/**
 * Created by lusong on 2016/11/25
 */
public interface CrossDepartmentTacticsRepository {
    /**
     * 获取月线索数
     * @param permit
     * @param ym
     * @param carCode
     * @param type
     * @param groupType
     * @return
     */
    List<Object> findCountByPermitAndYMAndCarCode(String permit, String year, String month, String carCode, String groupType, String kind);

    /* 获取周有效线索数 推荐 在购 呼入 网络 主动集客*/
    List<Object> findCountByPermitAndYMAndCarCodeWeek(String permit, String beginDay, String endDay, String carCode, String groupType, String kind, Integer day, Integer days);

    /**
     * 获取月线索数
     * @param permit
     * @param ym
     * @param carCode
     * @param type
     * @param groupType
     * @return
     */
    List<Object> findResultAboutPermitAndYMAndCarCode(String permit, String ym, String carCode, String type, String groupType);

    /*获取周活跃休眠线索数*/
    List<Object> findResultAboutPermitAndYMAndCarCodeWeek(String permit, String ym, String carCode, String type, String groupType, Integer day, Integer days);

    List getTestDrive(String permit, int year, int startMonth, int endMonth, String carCode, String groupType);

    /* 获取散客客流数*/
    List getIndTraveler(String permit, String year, String month, String carCode, String groupType, String beginDay, String endDay);

    /*获取交车数*/
    List getpayCar(String permit, String year, String month, String carCode, String groupType, String beginDay, String endDay);

    /* 获取订单数*/
    List getOrdersCount(String permit, String year, String month, String carCode, String groupType, String beginDay, String endDay);

    /*获取报价数*/
    List getQuoteCount(String permit, String year, String month, String carCode, String groupType, String beginDay, String endDay);

    /*获取各种进店线索数*/
    List getEnterShopCount(String permit, String year, String month, String kind, String carCode, String groupType, String beginDay, String endDay);

    /*获取各种CDO进店线索数*/
    List getEnterShopCountCDO(String permit, String year, String month, String kind, String carCode, String groupType, String beginDay, String endDay);

    List getSalesGroup(String permit);

    List getAimValue(String year, String month, String permit);

    int findOrderCountAboutWingAndCusAndShow(String permit, String yearMonth, String type);

    int findTeslaCountAboutWingAndCusAndShow(String permit, String yearMonth, String type);

    List<?> findUserInfoByPermit(String permit);

    List<?> getAlreadyReceptionUser(String permit, String yearMonth);

    List<?> findWeekDepartmentTarget(String permit, String yearMonth, String carCode, String week, Double rate);

    List<?> findWeekSalesTarget(String permit, String yearMonth, String carCode, String week, Double rate);

    List findMaxWeekAboutDepartment(String permit, String yearMonth, String carCode);

    List findMaxWeekAboutSales(String permit, String yearMonth, String carCode);

    List getOrderCountOverWrite(String permit, String year, String month, String carCode, String groupType);

    List getOrderCountOverWriteWeek(String permit, String carCode, String groupType,String beginDay, String endDay);

    List getQuoteCountOverWrite(String permit, String year, String month, String carCode, String groupType,String beginDay, String endDay);

    List getpayCarOverWrite(String permit, String year, String month, String carCode, String groupType,String beginDay, String endDay);

    List getClueNumOfMonth (String permit, String ym, String groupType);

    List getToShopClueNum (String permit, String startDate, String endDate, String groupType);

    List getOtherClueNum (String permit, String startDate, String endDate, String groupType);

    List getWeekClueNum (String permit, String nowDate, String startDate, String endDate, String groupType, int day, int days);

}
